All guest shutdown operations are forwarded to L0, so the only native
calls to machine_restart happen from crash related paths inside the
hypervisor, hence switch the reboot code to instead issue a crash
shutdown.
Signed-off-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
[ wei: fix arm build ]
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
break;
case BOOT_XEN:
- xen_hypercall_shutdown(SHUTDOWN_reboot);
+ /*
+ * When running in PV shim mode guest shutdown calls are
+ * forwarded to L0, hence the only way to get here is if a
+ * shim crash happens.
+ */
+ xen_hypercall_shutdown(pv_shim ? SHUTDOWN_crash : SHUTDOWN_reboot);
break;
}
}
if ( opt_noreboot )
printk("Manual reset required ('noreboot' specified)\n");
else
+#ifdef CONFIG_X86
+ printk("%s in five seconds...\n", pv_shim ? "Crash" : "Reboot");
+#else
printk("Reboot in five seconds...\n");
+#endif
spin_unlock_irqrestore(&lock, flags);